.file-upload {
    position: relative;
    overflow: hidden;
}

.file-upload .form-control {
    z-index: 1;
}

.file-upload .form-control[readonly] {
     cursor: inherit;
 }

.file-upload-input {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 100%;
    height: 100%;
    font-size: 1000px; /*the button part of the file input will cover all the input */
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    outline: none;
    background: white;
    cursor: pointer;
    display: block;
    z-index: 2;
}

.file-upload-input--disabled {
    left: 0;
    right: auto;
    width:0;
    height:0;
    filter: alpha(opacity=0);
    opacity: 0;
    z-index: -1;
}

.file-upload-clear{
    border: none;
    background: transparent;
    font-size: 16px;
    z-index: 3;
    position: absolute;
    top: calc(50% - .7em);
    right: 2.5em;
    color: #666;
    padding: .1em .4em;
}

.file-upload-clear:hover {
    color: #333;
}
